/*
    用途：检查输入字符串是否为空或者全部都是空格
    输入：str
    返回：
    如果全是空返回true,否则返回false
     */
function isNull(str) {
    if(str === 0){
        return false;
    }
    if (str === "" || str === null || str === undefined){
        return true;
    }
    var regu = "^[ ]+$";
    var re = new RegExp(regu);
    return re.test(str);
}

/**
 * 判断用户名格式，包含大小写英文、数字和下划线。同时用户名长度在6-15之间。
 */
function isUsername(username) {
    var first = username.substring(0, 1);
    if (!((first >= 'a' && first <= 'z') || (first >= 'A' && first <= 'Z'))) {
        return false;
    }
    var rename = new RegExp("[a-zA-Z_][a-zA-Z_0-9]{0,}", "");
    return rename.test(username);
}

/**
 * 判断密码格式，包含大小写英文、数字和下划线。同时用户名长度在6-16之间。
 */
function isPassword(password) {
    var regex = /^[0-9A-Za-z_]{6,16}$/;
    return regex.test(password);
}


/*
 * 用途：检查输入字符串是否只由汉字、字母 输入： value：字符串 返回： 如果通过验证返回true,否则返回false
 *
 */
function isRealName(s) {// 判断是否是汉字、字母

    var regu = "^[a-zA-Z\u4e00-\u9fa5]+$";
    var re = new RegExp(regu);
    if (re.test(s)) {
        return true;
    } else {
        return false;
    }
}

/*
 * 用途：检查输入的Email信箱格式是否正确 输入： strEmail：字符串 返回： 如果通过验证返回true,否则返回false
 *
 */
function isEmail(strEmail) {
    // var emailReg = /^[_a-z0-9]+@([_a-z0-9]+\.)+[a-z0-9]{2,3}$/;
    var emailReg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;
    if (emailReg.test(strEmail)) {
        return true;
    } else {
        return false;
    }
}

/*
 * 用途：检查输入对象的值是否符合整数格式 输入：str 输入的字符串 返回：如果通过验证返回true,否则返回false
 *
 */
function isNumber(str) {
    var regu = /^[-]{0,1}[0-9]{1,}$/;
    return regu.test(str);
}

/*
 * 用途：检查输入字符串是否符合正整数格式 输入： s：字符串 返回： 如果通过验证返回true,否则返回false
 *
 */
function isInt(s) {
    if(s === null || s === undefined){
        return false;
    }
    var regu = "^[0-9]+$";
    var re = new RegExp(regu);
    if (s.search(re) != -1) {
        return true;
    } else {
        return false;
    }
}

/*
 * 用途：检查输入字符串是否是带小数的数字格式,可以是负数 输入： s：字符串 返回： 如果通过验证返回true,否则返回false
 *
 */
function isDecimal(str) {
    if (isNumber(str))
        return true;
    var re = /^[-]{0,1}(\d+)[\.]+(\d+)$/;
    if (re.test(str)) {
        if (RegExp.$1 == 0 && RegExp.$2 == 0)
            return false;
        return true;
    } else {
        return false;
    }
}

/*
 * 用途：检查输入手机号码是否正确 输入： s：字符串 返回： 如果通过验证返回true,否则返回false
 *
 */
function isMobile(s) {
    var length = s.length;
    if(length != 11){
        return false;
    }
    var first = s.charAt(0);
    if(first != 1){
        return false;
    }
    return true;
}

/*
 * 用途：检查输入的电话号码格式是否正确 输入： strPhone：字符串 返回： 如果通过验证返回true,否则返回false
 *
 */
function isPhone(strPhone) {
    var phoneRegWithArea = /^[0][1-9]{2,3}-[0-9]{5,10}$/;
    var phoneRegNoArea = /^[1-9]{1}[0-9]{5,8}$/;
    if (strPhone.length > 9) {
        if (phoneRegWithArea.test(strPhone)) {
            return true;
        } else {
            return false;
        }
    } else {
        if (phoneRegNoArea.test(strPhone)) {
            return true;
        } else {
            return false;
        }

    }
}

/**
 * 验证手机号+座机号
 * @param s
 * @returns {boolean}
 */
function isTel(s) {
    if(isMobile(s)){
        return true;
    }
    if(isPhone(s)){
        return true;
    }
    return false;
}